<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE composition PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
	xmlns:ui="http://java.sun.com/jsf/facelets"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:p="http://primefaces.org/ui"
	xmlns:c="http://java.sun.com/jsp/jstl/core"
	template="web/templates/ui.xhtml">

	<ui:define name="title">
		<h:outputText value="Usuarios" />
	</ui:define>
	<ui:define name="sidebar">
		<div class="widget">
			<div class="title">
				<div class="inner">
					<h3>
						<h:outputText value="Menú" />
					</h3>
				</div>
			</div>
			<!-- MENU PERFIL ADMINISTADOR -->
			<ui:include src="menu.xhtml" />

		</div>
	</ui:define>
	<ui:define name="content">
		<div class="page-header">
			<h3>
				<h:outputText value="Administración de Usuarios" />
			</h3>
		</div>
		<div class="subTitle">
			<ol class="breadcrumb">
				<li><a href="index.jsf"><span
						class="glyphicon glyphicon-home"></span></a></li>
				<li class="active">Búsqueda</li>
			</ol>
		</div>

		<div class="gridContent">
			<div class="inner">
				<h:form id="form">
						<p:messages id="messages" autoUpdate="true" />
						<div class="row">
							<div class="col-sm-4 form-group">
								<p:outputLabel for="txtDNI" value="Documento de Identidad" />
									<p:inputText id="txtDNI" value="#{usuarioService.txtDocumento}"
										maxlength="8"
										converterMessage="El campo 'Documento de Identidad' solo acepta números."
										onkeypress="return keyPressNro(this, event);">
										<f:convertNumber integerOnly="true" type="number" />
									</p:inputText>
							</div>
							
							<div class="col-sm-8 form-group">
								<p:outputLabel for="txtUsuario" value="Usuario" />
									<p:inputText id="txtUsuario" value="#{usuarioService.txtUsuario}"
										converterMessage="El campo 'Usuario' solo acepta números.">
									</p:inputText>
							</div>
							
						</div>
						<div class="row">
							<div class="col-sm-4 form-group">
								<p:outputLabel value="Apellido Paterno" for="txtApePat" />
								<p:inputText id="txtApePat" value="#{usuarioService.txtApePat}"></p:inputText>
							</div>
							<div class="col-sm-4 form-group">
								<p:outputLabel value="Apellido Materno" for="txtApeMat" />
								<p:inputText id="txtApeMat" value="#{usuarioService.txtApeMat}"></p:inputText>
							</div>
							<div class="col-sm-4 form-group">
								<p:outputLabel value="Nombre (s)" for="txtNombres" />
								<p:inputText id="txtNombres"
									value="#{usuarioService.txtNombres}"></p:inputText>
							</div>
						</div>

						<div class="row">
							<div class="col-sm-4 form-group">
								<p:outputLabel for="cboEntidad" value="Entidad" />
								<h:selectOneMenu id="cboEntidad"
									value="#{usuarioService.cboEntidad}">
									<f:selectItem itemLabel="Todos" itemValue="-1"
										noSelectionOption="true" />
									<f:selectItems value="#{usuarioService.listaEntidad}"></f:selectItems>
								</h:selectOneMenu>
							</div>
							<div class="col-sm-4 form-group">
								<p:outputLabel for="cboPerfil" value="Perfil" />
								<h:selectOneMenu id="cboPerfil"
									value="#{usuarioService.cboPerfil}">
									<f:selectItem itemLabel="Todos" itemValue="-1"
										noSelectionOption="true" />
									<f:selectItems value="#{usuarioService.listaPerfiles}"></f:selectItems>
								</h:selectOneMenu>
							</div>
							<div class="col-sm-4 form-group">
								<p:outputLabel for="cboEstado" value="Estado" />
								<h:selectOneMenu id="cboEstado"
									value="#{usuarioService.cboEstado}">
									<f:selectItem itemLabel="Todos" itemValue="-1"
										noSelectionOption="true" />
									<f:selectItems value="#{usuarioService.listaEstados}"></f:selectItems>
								</h:selectOneMenu>
							</div>
						</div>

						<div class="btnAction row no-gutter">
							<div style="clear: both;"></div>
							<div class="text-right">
								<p:commandButton update="singleDT" styleClass="btn btn-success"
									icon="ui-menuitem-icon ui-icon fa fa-save" iconPos="right"
									value="Buscar"
									actionListener="#{usuarioService.buscarUsuarios}"></p:commandButton>
								<p:commandButton update=":form" styleClass="btn btn-view"
									value="Limpiar" actionListener="#{usuarioService.limpiar}" />
							</div>
						</div>

						<style>
.ui_celda_frm {
	font-weight: bold;
	color: #232323;
	text-align: left;
}
</style>


						<!--  Grilla resultante de la búsqueda -->

						<p:dataTable id="singleDT" var="usuario"
							value="#{usuarioService.listaUsuarios}"
							widgetVar="responsableTable"
							emptyMessage="No se han encontrado registros" rows="20"
							paginator="true" paginatorPosition="bottom" currentPageReportTemplate="Total Registros : {totalRecords}"
							paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}">

							<p:column headerText="DNI" sortBy="#{usuario.dni}" style="width:70px;">
								<h:outputText value="#{usuario.dni}" />
							</p:column>

							<p:column headerText="Usuario" style="width:120px;">
								<h:outputText value="#{usuario.usuario}" />
							</p:column>

							<p:column headerText="Nombre">
								<h:outputText value="#{usuario.nombres}" />
							</p:column>

							<p:column headerText="Ap. Paterno">
								<h:outputText value="#{usuario.apellidoPaterno}" />
							</p:column>

							<p:column headerText="Ap. Materno">
								<h:outputText value="#{usuario.apellidoMaterno}" />
							</p:column>

							<p:column headerText="Perfil" style="width:120px;">
								<h:outputText value="#{usuario.perfil}" />
							</p:column>

							<p:column headerText="Entidad">
								<h:outputText value="#{usuario.nombEntidad}">
								</h:outputText>
							</p:column>

							<p:column headerText="Estado">
								<h:outputText value="#{usuario.nombreEstado}">
								</h:outputText>
							</p:column>

							<p:column style="text-align: center; width:100px;">
								<f:facet name="header">
									Acciones
								</f:facet>
								<div style="color: #A0A0A0;">
									<h:link id="usuario" value="Editar" outcome="usuarios_registro">
										<f:param name="usuario_id" value="#{usuario.usuarioId}" />
									</h:link>
									
									<span style="color:#CBCBCB;#{usuario.estadoRegistro eq 'S' and (usuario.perfilId != 5 and usuario.perfilId != 6) ?'display:block;':'display:none'}">
										<p:commandLink update="singleDT" id="deshabilitar" value="Deshabilitar" action="#{usuarioService.deshabilitarUsuario(usuario)}">
											<p:confirm header="Confirmación" message="¿Está seguro de deshabilitar el Usuario seleccionado?" icon="ui-icon-alert" />	
										</p:commandLink>
										&nbsp;&nbsp;
									</span>
	
									<span style="color:#CBCBCB;#{usuario.estadoRegistro eq 'N'  and (usuario.perfilId != 5 and usuario.perfilId != 6) ?'display:block;':'display:none'}">
										<p:commandLink update="singleDT" id="habilitar" value="Habilitar" action="#{usuarioService.habilitarUsuario(usuario)}">
											<p:confirm header="Confirmación" message="¿Está seguro de habilitar el Usuario seleccionado?" icon="ui-icon-alert" />	
										</p:commandLink>
											&nbsp;&nbsp;
									</span>
								</div>
							</p:column>

						</p:dataTable>
						<div style="float: right; margin-top:10px;">
							<p:commandButton styleClass="btn btn-success"
								icon="ui-menuitem-icon ui-icon fa fa-plus" iconPos="right"
								value="Crear Nuevo" action="usuarios_registro.jsf"></p:commandButton>
						</div>
				</h:form>
			</div>
		</div>
		
		<p:confirmDialog global="true" showEffect="fade" hideEffect="fade" closeOnEscape="true" rendered="true">
			<p:commandButton value="Si" type="button" styleClass="ui-confirmdialog-yes" icon="ui-icon-check" />
			<p:commandButton value="No" type="button" styleClass="ui-confirmdialog-no" icon="ui-icon-close" />
		</p:confirmDialog>
		
	</ui:define>

</ui:composition>